import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { RouterModule } from '@angular/router';

import { NotebookWxappSharedModule } from '../../shared';
import {
    WxUserService,
    WxUserPopupService,
    WxUserComponent,
    WxUserDetailComponent,
    WxUserDialogComponent,
    WxUserPopupComponent,
    WxUserDeletePopupComponent,
    WxUserDeleteDialogComponent,
    wxUserRoute,
    wxUserPopupRoute,
} from './';

const ENTITY_STATES = [
    ...wxUserRoute,
    ...wxUserPopupRoute,
];

@NgModule({
    imports: [
        NotebookWxappSharedModule,
        RouterModule.forChild(ENTITY_STATES)
    ],
    declarations: [
        WxUserComponent,
        WxUserDetailComponent,
        WxUserDialogComponent,
        WxUserDeleteDialogComponent,
        WxUserPopupComponent,
        WxUserDeletePopupComponent,
    ],
    entryComponents: [
        WxUserComponent,
        WxUserDialogComponent,
        WxUserPopupComponent,
        WxUserDeleteDialogComponent,
        WxUserDeletePopupComponent,
    ],
    providers: [
        WxUserService,
        WxUserPopupService,
    ],
    schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
export class NotebookWxappWxUserModule {}
